package com.henghe.frame.common.annotation;

import java.lang.annotation.Documented;
import java.lang.annotation.Retention;
import java.lang.annotation.Target;

import static java.lang.annotation.ElementType.METHOD;
import static java.lang.annotation.RetentionPolicy.RUNTIME;

/**
 * Description:
 * Author: LiuWenQing
 * Datetime: 2023/3/31 09:30
 */
@Documented
@Retention(RUNTIME)
@Target(METHOD)
public @interface OptLog {
    // 操作名称
    String value() default "";

    boolean valid() default true;

    Position logsPostion() default Position.Action;

    int optTypeId() default 1;

    String code() default "";

    String logDesc() default "";

    public static enum Position {
        Action,
        Service,
        DAO;

        private Position() {
        }
    }
}
